<?php
//命名空间
namespace app\index\model;

//导入系统的数据模型
use think\Model;
use think\Db;
//导入软删除类
use traits\model\SoftDelete;

//声明user模型
class User extends Model{
	//使用软删除
	use SoftDelete;
	//设置删除的时间戳
	

	//设置自动写入时间戳
	protected $autoWriteTimestamp = true;

	//如果不是create_time  update_time
	//则需要设置时间戳字段  设置字段默认值
	// protected $createTime = 'create_times';//增加时间字段值
	// protected $updateTime = 'update_times';//更新时间字段值
	// protected $deleteTime = "dalete_times";//删除时间字段值
	// protected $updateTime = false;//取消字段的更新时间

	//设置自动完成
	//无论更新操作和添加操作都会执行
	//1.在模型中设置	
	// protected $auto = [];

	// protected $insert = ['create_time'];
	// protected $update = ['update_time'];
	
	//2.在配置文件中设置database.php
	//自动写入时间戳字段  'auto_timestamp' => true,

	//书写自动完成
	protected function setCreateTimeAttr()
	{
		return time();
	}
	protected function setUpdateTimeAttr()
	{
		return time();
	}
	protected function setStatusAttr()
	{
		return 1;
	}


	//sex 的修改器
	public function getSexAttr($val){
		switch ($val) {
			case '0':
				# code...
				
				return "未知";
				break;

			case '1':
				# code...
				
				return "男";
				break;
			
			case '2':
				# code...
				
				return "女";
				break;
			
			default:
				# code...
				break;
		}
	}

	//用户状态字段获取器
	//如果字段为user_status修改器名字getUserStatusAttr
	public function getStatusAttr($val)
	{
		$status = [
			0 => "黑名单",
			1 => "正常"
		];
		return $status[$val];
	}

	//用户密码的修改器   setPass中测试pass md5加密
	// public function setPassAttr($val){

	// 	return md5($val);
	// }
	
	//修改器
	public function setNameAttr($val)
	{
		return strtoupper($val);//strtoupper大写
	}
	public function setPassAttr($val)
	{
		return md5($val);
	}
}